-
Notifications
You must be signed in to change notification settings - Fork 8
Add batch processing for failed pending transactions in EOA executor #92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add batch processing for failed pending transactions in EOA executor #92
Conversation
WalkthroughA new batch-failure method is added to the atomic store to fail multiple pending transactions in a single Redis pipeline, reducing round-trips. The worker is refactored to collect non-retryable failures and invoke this batch method instead of failing transactions per-item, with added timing instrumentation around cleanup and budget tracking. Changes
Sequence Diagram(s)sequenceDiagram
participant Worker as Worker (send.rs)
participant Store as AtomicEoaExecutorStore
participant Redis as Redis Pipeline
rect rgb(200, 240, 255)
Note over Worker,Redis: Old: Per-Item Failure
Worker->>Store: fail_pending_transaction (Item 1)
Store->>Redis: ZREM pending set + hash update + webhook queue + execute
Worker->>Store: fail_pending_transaction (Item 2)
Store->>Redis: ZREM pending set + hash update + webhook queue + execute
end
rect rgb(240, 200, 255)
Note over Worker,Redis: New: Batch Failure
Worker->>Worker: Collect non_retryable_failures: Vec<Item>
Worker->>Store: fail_pending_transactions_batch (all items)
Store->>Redis: ZREM all items + all hash updates + all webhooks queued
Store->>Redis: Execute pipeline (single round-trip)
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro Disabled knowledge base sources:
📒 Files selected for processing (2)
🧰 Additional context used🧠 Learnings (3)📓 Common learnings📚 Learning: 2025-09-20T05:30:35.171ZApplied to files:
📚 Learning: 2025-09-20T06:58:40.230ZApplied to files:
🧬 Code graph analysis (2)executors/src/eoa/worker/send.rs (3)
executors/src/eoa/store/atomic.rs (2)
🔇 Additional comments (4)
Comment |
Summary by CodeRabbit
Release Notes
✏️ Tip: You can customize this high-level summary in your review settings.